package org.jrfe.scene.impl;

import org.jrfe.math.Transform2D;
import org.jrfe.math.Vector2f;
import org.jrfe.math.bound.Bound;

public abstract class BaseNode {

	
	protected Transform2D localTransform;
	protected Transform2D worldTransform;
	
	protected Vector2f localCenter;
	protected Vector2f worldCenter;
	
	private Bound bound;
	private Node parent;

	public BaseNode() {
		//tranform = new Transform2D();
		localCenter = new Vector2f();
		worldCenter = new Vector2f();
		localTransform = new Transform2D();
		worldTransform = new Transform2D();
		
	}
	public Node getParent() {
		return parent;
	}
	
	public void setParent(Node parent) {
		this.parent = parent;
	}
	
	public Bound getBound() {
		return bound;
	}
	
	public void setBound(Bound bound) {
		this.bound = bound;
	}
	
	public void translate(Vector2f v){
		
	}
	
	public void transform(Transform2D t){
		
	}
	
	public void updateBound(){
		
	}
	
	public void applayTranslate(){
		
	}
		
	public void applayTransform(){
	
	}
	
	
	public Transform2D getLocalTransform() {
		return localTransform;
	}
	public void setLocalTransform(Transform2D localTransform) {
		this.localTransform = localTransform;
	}
	public Transform2D getWorldTransform() {
		return worldTransform;
	}
	public void setWorldTransform(Transform2D worldTransform) {
		this.worldTransform = worldTransform;
	}
	public Vector2f getLocalCenter() {
		return localCenter;
	}
	public void setLocalCenter(Vector2f localCenter) {
		this.localCenter = localCenter;
	}
	public Vector2f getWorldCenter() {
		return worldCenter;
	}
	public void setWorldCenter(Vector2f worldCenter) {
		this.worldCenter = worldCenter;
	}

	
}
